#ifndef UPPERSEARCHRESPONSECMD_H
#define UPPERSEARCHRESPONSECMD_H

#include "Command/BaseCmd.h"
#include "Protocol/CloudProtocol.h"

class UpperSearchResponseCmd : public BaseCmd
{
    Q_OBJECT
public:
    enum{FunctionCode = CloudProtocol::UpperSearchResponse};

    Q_INVOKABLE explicit UpperSearchResponseCmd(QObject *parent = 0);

    Package toPackage();
    void unPackage(Package package);

    quint8 deviceType() const;
    void setDeviceType(const quint8 &deviceType);

    QString mac() const;
    void setMac(const QString &mac);

    QString registrant() const;
    void setRegistrant(const QString &registrant);

    QByteArray registrationDateBCD() const;
    void setRegistrationDateBCD(const QByteArray &registrationDateBCD);

    quint8 mode() const;
    void setMode(const quint8 &mode);

    QString ip() const;
    void setIp(const QString &ip);

    QString mask() const;
    void setMask(const QString &mask);

    QString gateway() const;
    void setGateway(const QString &gateway);

    quint32 getKNXMac() const;
    void setKNXMac(const quint32 mac);

    quint8 getKNXStatus() const;
    void setKNXStatus(const quint8 status);



private:
    quint8  m_deviceType;
    QString m_mac;
    QString m_registrant;
    QByteArray m_registrationDateBCD;
    quint8  m_mode;
    QString m_ip;
    QString m_mask;
    QString m_gateway;
    quint32 m_KNXMac;
    quint8 m_KNXStatus;

};

#endif // UPPERSEARCHRESPONSECMD_H
